<p>
Linux.com has a great series "My Desktop OS..." which is usually a Linux desktop. I thought i should do a tongue-in-cheek one "My Desktop OS: Windows XP" - to highlight some of my frustrations with the Linux desktop of late - multimedia to be specific. Which boils down to me being too lazy to bother about my own freedom. I'll follow this up with another article, "My Desktop OS: FreeDOS" ;)
<p>
So after getting my hands dirty with Linux desktops over the past 8 years, I started using XP again. <i>("'Shock horror! Linux advocate caught using XP!' it says here in the paper.")</i>
<p>
<img alt="ICL.png" src="http://weblogs.java.net/blog/evanx/archive/ICL.png" align=left vspace=4 hspace=8 />
Let me rewind a little bit. When I was at school, in the 1980's, I had access to computers at my father's computer company. My first desktop was an ICL 1500 mini-computer with huge removable 5Mb disks. 
<p>
Actually I had lots of "exotic" computers to play with because my father's company had to port their 4GL software to all these different "micro-computers" and mini-computers, mostly from ICL (which was British for "IBM" in those days). This was in the days before the IBM PC came along and changed everything.
<p>
Before the PC arrived, my favourite "micro" computer was an CP/M multi-terminal machine. It was powered by a Zilog CPU, just like my friends' Sinclair Spectrums. I didn't have a Spectrum - I had a great museum playground of ICL computers of the twentieth century! Naturally I spent every hour I could out of school at that computer playground.
<p>
So this favourite CP/M box of mine was the size of the original PC, but it had four terminals hanging off it - fantastic! Especially when you're boss' kid playing at the office after school. There was always a terminal free, so I never cycled all the way from school to the office, only to have to wait for hours for someone to finish running their job.
<p>
Then an "IBM" arrived. An "IBM PC." Now understand, we were predominantly an "ICL" house. But we had heard of this American "startup" computer company called "IBM." Just that I personally hadn't seen a computer made by IBM (or DEC) before. South Africa was sanctioned by the US, and I think that IBM PC had to be sneaked in via the UK. (Maggie Thatcher, you did the wrong thing for the wrong reasons - you turned me into a computer geek!)
<p>
<img src="http://weblogs.java.net/blog/evanx/archive/IBMPC.png" align=right vspace=4 hspace=8 />
So this IBM PC ran PC-DOS, and had a 360k floppy, and a 10Mb hard drive - now we're talking! They called it a "C Drive." The real computer geeks referred to it just "C colon." The office personnel - secretaries and operators and such - were strictly instructed, "Under no circumstances, type 'format C:', ever!" This was an honest mistake, when you were constantly having to type "format A:" and "format B:" to use those new 360k 5.25" floppy disks.
<p>
I would have preferred this PC to run my favourite multi-user CP/M, but that didn't curb my enthusiasm one iota - I was on a path of discovery! (Pity it was computers and not girls, but still it was something.)
<p>
My IBM PC desktop then was the GW-Basic fullscreen editor - fantastic!  You could move the cursor around the whole screen - and that really was something special in those days, I promise you!
<p>
In the mid-eighties, I progressed to Norton's Editor, and TurboC - woohoo! Little did i know that for the next decade and a half, except for the addition of a mail application (<tt>pine</tt>), and a browser application (Netscape), my desktop metaphor would remain essentially the same. Instead of programming in Norton's Editor, using the DOS command-line to compile and run, I would be programming in <tt>vi</tt>, and using the <tt>bash</tt> command-line to compile and run. I made the not-so-huge leap from <tt>run.bat</tt> to  <tt>run.sh</tt>. "A small step for man, a giant leap for mankind." RMS will back me up on that.<p>
<p>
<img src="http://weblogs.java.net/blog/evanx/archive/Doom.png" width="166" height="208" align=left vspace=4 hspace=8 />
I pretty much skipped the Windows 3.1 and Windows 95 desktops, and went straight from DOS to Linux in the late 1990s. Why use Windows when Norton's Editor and Norton Commander were the bomb? I used Norton, Borland Turbo C, and LaTeX. And Doom. Windows was a waste of time, literally - it just made my 386 with 2Mb RAM run like a dog. And anyway what applications did it have? Just slow buggy graphical versions of otherwise solid DOS programs. I used Lotus 1-2-3 and MS-Word on DOS - they did the job very nicely, thank you!
<p>
You were right Bill, you really did only need 640k in those days, and those PCs flew! I don't remember any hour-glasses, or waiting for web pages to load... Oh, because there was no web, i forgot about that.
<p>
But Linux, with its X Windows and Netscape, rocked so hard! The best thing about Linux for me, was that it opened up the wonderful world of networking, and the Internet, and the World Wide Web, oh wow, i was blown away! Once you got your XF86 config file working, you were on Al's superhighway. Actually I never got my XF86 config working - so a friend got it working for me, yeah baby! 
<p>
I xterminated X windows with <tt>bash</tt>, <tt>pine</tt>, <tt>vi</tt>, <tt>gcc</tt> and later <tt>java</tt>. To be honest, I only used two X applications: Netscape and <tt>xterm</tt>. 
<p>
<!-- img alt="XP.png" src="http://weblogs.java.net/blog/evanx/archive/XP.png" width="219" height="312" hspace=8 align=right /-->
Then a few years later I got a Java development contract through that very same friend that had converted me to Linux six years earlier (and got my XF86 config file working for me). He upgraded to a new laptop and gave me his old laptop (exactly what i would have done). I was all fully set up with IntelliJ, JDO, MySQL, on... XP! He explained that our clients all use Windows XP, so we are deploying our application to XP, and so we develop on XP. 
<p>
Actually for the month before that, I had been using my sister's XP machine to check my webmail and surf occassionally, because I was between contracts and minus a computer to call my own. So I was <i>au fait</i> with Windows XP, or should I say with Firefox running on Windows XP.
<p>
At first I found XP very frustrating. Mostly Windows Explorer. Point and click and wait. Repeat. I was used to <tt>bash</tt>, which with its file name completion, was quick and easy to navigate the file system, and run applications - even better than the 1980's with CP/M and PC-DOS - because <tt>bash</tt> has got file name completion - it's the bomb, baby!
<p>
<img alt="OpenOffice.png" src="http://weblogs.java.net/blog/evanx/archive/OpenOffice.png" align=right vspace=4 hspace=8 />I put my frustrations with Windows Explorer aside, installed my favourite apps, namely Firefox, Thunderbird and OpenOffice, and some GNU utilities I need like <tt>rsync</tt> and <tt>zsh</tt> for backup scripting, and <tt>ncftp</tt> to upload web pages and stuff. And <tt>wget</tt> so I can download stuff even tho the connection always gets reset after 4 hours downloading, with 10 minutes still to go. Usually when my niece picks up the other phone. Modems don't like that.
<p>
So I got used to Windows XP. It is slick, and runs all my favourite opensource apps, so it's pretty much like a Linux desktop. I spend 99% of my time in my IDE (which was IntelliJ), Firefox and Thunderbird, just like on Linux. I was a happy puppy, I won't lie to you. For one thing, IntelliJ was definitely a step up from that <tt>vi</tt> rock i had been living under for so many years. 
<p>
My next contract, the same thing happened. "Here is your XP machine. I am your network admin. Let me know if your Outlook doesn't work, or you can't print something." I somehow knew I couldn't ask him if he had a set of Fedora CDs laying around for me for reinstall my machine. My job was a Java developer, paid by the hour expressly not to be self-installing company property with unsupported operating systems and software! So I was a good user. Except for occassionally like when the printer wasn't working. I emailed the network admin that I've pressed Print about twenty times and still nothing is coming out of the network printer, but i'll keep trying! Best part is he never knew if I was joking or not. After all I was just a lame Windows user and not a l33t Linux hax0r.
<p>
<img alt="v16-rmi-eclipse.png" src="http://weblogs.java.net/blog/evanx/archive/v16-rmi-eclipse.png" align=left vspace=4 hspace=8 />
So with this next contract, the only thing that changed is that instead of using IntelliJ, I was using Eclipse, and instead of Thunderbird, I was using Outlook, d'oh! But otherwise I was still a happy XP user. I installed Firefox, and spent my days lavishing in Eclipse and Firefox, and making the best of Outlook.
Then something strange happened...
<p>
When that contract was over, I tried to go back to Linux on my new home PC. Because really, I couldn't be using this "Windows Phone Home." I am a real programmer and IT professional, goddamnit! And a longtime Linux advocate to boot. Heck, I've co-founded at least one Linux assocation that i can remember, and a LUG too. My frikkin car license plate is even "LINUX." It's a known Linux bug in Cape Town. Yes, a VW Beetle. 
<p>
So i booted into Knoppix for starters. This is when the strange thing happened. I hated it! I wanted my XP back! The fonts looked terrible! The icons looked unfamiliar! The resolution was terrible! No accelerated video drivers. The mouse went flying across the screen at the million miles an hour. My bluetooth USB key didn't work. How am I gonna get pictures from my phone to email my family!? No iTunes for my iPod! No MP3, no Flash, no Quicktime, no podcasts, no YouTube. Darn, my life as I knew it was taken away from me in the blink of a <tt>lilo</tt>!
<p>
<!-- img alt="Doom3.jpg" src="http://weblogs.java.net/blog/evanx/archive/Doom3.jpg" width="268" height="308" align=left vspace=4 hspace=8 /-->
I phoned a friend, a Linux friend, in a panic, and said, I'm fragged. I can't play that new Doom3 demo, and that's just the start of it! He said, no problem, you just gotta set up your system properly. Check this "Tips and Tricks" site, download those RPMs, these dependencies, insert those suppositories, and slap-get this other thing. 
<p>
I said, "Listen, buddy, I'm on frikkin holiday. It's my frikkin day off, so I'm not going to spend the whole weekend being a computer geek. I've been a computer geek my whole life, and it's enough! I just want my computer to work. Yes I'm concerned about freedom - my freedom to go outside and have a beer in the sun, rather than spending the day slapt-getting my frikkin hard drive! I've been working for the whole week on a frikkin computer, and my evenings and weekends must be free as in beer! Configuring drivers and plugins sounds very much like work to me. So get your slapt arse over here, linux boy, and configure my frikkin computer for me, bitch!" 
<p>
<img alt="Thunderbird.png" src="http://weblogs.java.net/blog/evanx/archive/Thunderbird.png" align=right vspace=4 hspace=8 />
OK, so that outburst didn't do the trick. Which brought me back to... my desktop, Windows XP! It's got the best apps, for free - Firefox, Thunderbird, OpenOffice, Netbeans, RealPlayer. In addition to that, every application that runs on Windows, runs on Windows, and there's a lot of them! Installing software is a breeze. Everything comes with an installer. There is no "dependency hell" - it's like being single again! Move over Linspire, this is "Click and Run" like you've never seen it before!
<p>
Everything just works. My sound and video works like a dream. My weekends are my own, or should I say, MPlayer's. My bluetooth camera phone works, so I can send pictures to my Mom of me blowing up nitrous ballons at parties again. (That's my story and I'm sticking to it.) My iPod works. I got my tunes. Can life be better? (I heard that, RMS. Just let me enjoy the moment please!) Ah. I can hear the birds chirping outside... Oh it's my GoogleTalk!
<p>